src1=testsig.cc
src2=mykill.cc
src3=ioTest.cc
src4=abnormalInterrupt.cc
src5=blockSignal.cc
src6=blockSignal_second.cc
src7=non-WaitProcess.cc
src8=zombieTest.cc

des1=testsigV1.exe
des2=testsigV2.exe
des3=mykill.exe
des4=ioTest.exe
des5=abnormalInterrupt.exe
des6=blockSignal.exe
des7=blockSignal_second.exe
des8=non-WaitProcess.exe
des9=zombieTest.exe

.PHONY:all
all:$(des1) $(des2) $(des3) $(des4) $(des5) $(des6) $(des7) $(des8) $(des9)

$(des1):$(src1)
	@g++ -Dv1 $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des2):$(src1)
	@g++ -Dv2 $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des3):$(src2)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des4):$(src3)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des5):$(src4)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des6):$(src5)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des7):$(src6)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des8):$(src7)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
$(des9):$(src8)
	@g++ $^ -o $@ -std=c++11
	@echo "compile $^ to $@"
.PHONY:clean
clean:
	rm -f $(des1) $(des2) $(des3) $(des4) $(des5) $(des6) $(des7) $(des8) $(des9)